/*
  强哥的机器分裂
  题目描述
    众所周知，强哥有一个很有趣的机器人，除了不会转身以外什么都会。
    这天强哥一觉睡醒，发现这个机器人居然开始了自我分裂！
    经过一段时间的观察，强哥发现，机器人的分裂和他的电量和动力强度有关。

    这台机器人一开始的电量为 x，动力强度为 y。
    强哥发现，当电量低于动力强度的两倍时，它就会发生分裂。
    形式化的说就是: 当 2 ∗ x ≤ y 时机器人会发生分裂，一台机器人将分裂成两台机器人！

    但是分裂出来的两台机器人规格却不同，两台机器人的规格分别如下:
      一台机器人的规格为：电量为 x，动力强度为 ⌊ (x + y) / 2 ⌋；
      一台机器人的规格为：电量为 ⌊ (x + y) / 2 ⌋ + 1，动力强度为 y；
    而分裂出来的机器人又会继续分裂。

    现在强哥很好奇，如果等待足够长的时间，直到所有机器人都分裂完毕，最终会有几台机器人，
    并且每台机器人的规格分别是什么？
  输入格式
    输入第一行包含两个整数 x, y，表示一开始强哥这台机器人的规格。
  输出格式
    输出第一行包含一个整数 n 表示最终的机器人数量；
    接下来 n 行每行包含两个整数 ai, bi，分别表示一台机器人的规格，并且将所有机器人按照电量大小从大到小排序，
      如果电量一样则按照动力强度从小到大排序。
  数据范围
    对于 10% 的数据保证 x = y
    对于另外 10% 的数据保证 x = 1
    对于 100% 的数据保证 1 ≤ x ≤ y ≤ 1000000
  样例输入1
    1 10
  样例输出1
    5
    6 10
    4 5
    3 3
    2 2
    1 1
  样例解释1
    分裂过程如下：
      (1, 10)
      (1, 5)、(6, 10)
      (1, 3)、(4, 5)、(6, 10)
      (1, 2)、(3, 3)、(4, 5)、(6, 10)
      (1, 1)、(2, 2)、(3, 3)、(4, 5)、(6, 10)
*/